﻿/*
Commerce by Onex – eCommerce software platform (www.ecommerce.byonex.com)
Copyright (C) 2008-2010 by Onex Group

This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
 
 */
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using ShopBLL;

public partial class controls_ctrlRates : System.Web.UI.UserControl
{
    #region VARIABLES

    string _productID;

    #endregion VARIABLES

    #region PROPERTIES

    public string ProductID
    {
        get { return _productID; }
        set { _productID = value; }
    }

    #endregion PROPERTIES

    #region METHODS

    private void dlRatesDataBind()
    {
        decimal rate = ProductsManager.Instance.GetAvgRateForProduct(Convert.ToInt32(ProductID));
        List<string> starsUrls = new List<string>();
        string fillStarUrl = "..\\gfx\\star_fill.png";
        string emptyStarUrl = "..\\gfx\\star_empty.png";
        string halfStarUrl = "..\\gfx\\star_half.png";
        if (rate > 0)
        {
            starsUrls.Add(fillStarUrl);
            for (int i = 0; i < 5; i++)
            {
                if (rate >= ((decimal)2)) starsUrls.Add(fillStarUrl);
                else if (rate >= ((decimal)1.5)) starsUrls.Add(halfStarUrl);
                else starsUrls.Add(emptyStarUrl);

                rate -= ((decimal)1);
            }

            dlRates.DataSource = starsUrls;
            dlRates.DataBind();
        }
        else { dlRates.Visible = false; }

    }

    #endregion METHODS

    #region PAGE EVENTS

    protected void Page_Load(object sender, EventArgs e)
    {

    }

    protected void Page_PreRender(object sender, EventArgs e)
    {
        dlRatesDataBind();
    }

    #endregion PAGE EVENTS
}
